package v1

import (
	"gf2DemoServer/internal/model"
	"github.com/gogf/gf/v2/frame/g"
)

// CategoryAddReq 添加分类参数
type CategoryAddReq struct {
	g.Meta `path:"/category/add" method:"post" tags:"文章管理" summary:"添加分类"`
	Title  string `json:"title" v:"required#请输入标题" dc:"标题"`
	Thumb  string `json:"thumb" v:"required#请上传分类图片" dc:"图片"`
	Sort   int    `json:"sort" dc:"排序：数字越大越靠前"`
	Status int    `json:"status" dc:"状态：0=隐藏，1=显示"`
}

// CategoryAddRes 返回参数
type CategoryAddRes struct{}

// CategoryDelReq 删除分类参数
type CategoryDelReq struct {
	g.Meta `path:"/category/del" method:"post" tags:"文章管理" summary:"删除分类"`
	Ids    string `json:"ids" v:"required#请选择要删除的分类" dc:"分类IDs"`
}

// CategoryDelRes 返回参数
type CategoryDelRes struct{}

// CategoryUpdateReq 修改分类参数
type CategoryUpdateReq struct {
	g.Meta `path:"/category/update" method:"post" tags:"文章管理" summary:"修改分类"`
	Id     int `json:"id" v:"required#请选择要修改的分类" dc:"分类ID"`
	*CategoryAddReq
}

// CategoryUpdateRes 返回参数
type CategoryUpdateRes struct{}

// CategoryListReq 分类列表
type CategoryListReq struct {
	g.Meta `path:"/category/list" method:"post" tags:"文章管理" summary:"分类列表"`
	Page   int    `json:"page" dc:"当前页码"`
	Limit  int    `json:"limit" dc:"每页加载条数"`
	Title  string `json:"title" dc:"分类标题"`
}

// CategoryListRes 返回参数
type CategoryListRes struct {
	List  []*model.CategoryListItem `json:"list" dc:"分类列表"`
	Count int                       `json:"count" dc:"记录总数"`
}

// CategoryDetailReq 分类参数
type CategoryDetailReq struct {
	g.Meta `path:"/category/detail" method:"get" tags:"文章管理" summary:"分类详情"`
	Id     int `json:"id" v:"required#请选择要查看的分类" dc:"分类ID"`
}

// CategoryDetailRes 返回参数
type CategoryDetailRes struct {
	*model.CategoryDetail
}
